package com.szpx.utils;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;

import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author June
 * @version 1.0.0
 * @title BindingResultHelper
 * @create 2024/4/2 14:56
 * @description
 **/
/**
 *  数据校验工具类
 */
public class BindingResultHelper {

    public static Map<String, String> toErrorMap(BindingResult bindingResult) {
        if (bindingResult.hasErrors()){
//          如果传入的 BindingResult 对象中包含错误信息（即有字段验证失败），则该方法会遍历错误列表，将每个字段的名称和默认错误消息存储在一个 Map 中。
            List<FieldError> errorList = bindingResult.getFieldErrors();
            Map<String, String> map = new HashMap<>();
            for (FieldError fieldError : errorList) {
                map.put(fieldError.getField(), fieldError.getDefaultMessage());
            }
            return map;
        }
        return Collections.emptyMap();
    }
}
